Lean 4 基礎
Lean 4のドキュメント
証明を書くためのコマンドはタクティク(tactic)
intro
constructor
code:memo
-- 1行コメント
/-
複数行コメント
-/
#で始まるものは実行すると結果がすぐに確認できるようコマンドに分類される
こういうのは「対話的」とよばれる
code:memo
-- evalコマンド
--> "Hello, World!"
def double (x : Nat) : Nat :=
x + x
--> 6
code:memo
--> 2 + 2 = 4 : Prop
code:memo
theorem easy : 2 + 2 = 4 :=
rfl
theorem hard : FermatLastTheorem :=
sorry
rw
⊢
Goalが左辺=右辺なら証明完了
induction n with d hd
apply
apply h2 at h1なら仮定h2を仮定h1に適用する
code:memo
h1: x = 37
h2: x = 37 → y = 42
↓ apply h2 at h1
h2: x = 37 → y = 42
h1: y = 42
apply succ_inj at hなら仮定hのsuccを除去する
succ(a) = succ(b)→a = b
code:memo
h: succ (succ 0) = succ (succ (succ 0))
↓ apply succ_inj at h
h: succ 0 = succ (succ 0)
apply succ_injならゴールに適用する
intro
intro hで仮定を作る?
exact
exact hで仮定をゴールを比較する
【Lean実況】数学系のためのLean勉強会の教材を解くBasic1 - YouTube
https://www.youtube.com/watch?v=1saX8G-wN2o&list=PL-2TwNpShL3yJRE2xUwOEujUv6j4S0_ml&index=1
確認用
Q. 1行コメント
Q. 複数行コメント
参考
関連
メモ
調査用